package com.thinkgem.jeesite.modules.brain.common;

import com.thinkgem.jeesite.modules.brain.entity.BRankDic;
import com.thinkgem.jeesite.modules.brain.entity.BUserDailystatusData;
import com.thinkgem.jeesite.modules.brain.entity.BUserRankData;
import com.thinkgem.jeesite.modules.sys.utils.UserUtils;

public class UserConfigUtil {


    public static  final String ThreadUserConfigkey="jijfan2ijkjia2";



    //獲取當前用戶的租户配置
    public static TenantConfig getCurrUserConfig(){

        return  (TenantConfig)UserUtils.getSession().getAttribute(ThreadUserConfigkey);
    }
    //获取当前用户rank等级
    public static BRankDic getCurrRank(){


        return  getCurrUserConfig().getHandler().getCurrBRankDic( getCurrRankData().getRankStar().intValue());
    }

    /**
     * 获取当前用户rank 星级数量
     * @return
     */
    public static BUserRankData getCurrRankData(){
        //登录时保存到session attribute那里
            //使用了ehcache 缓存 所以集群会出现数据一致性问题

        //每次登出 和 退出程序时  插入库
        return ( (BUserDailystatusData) UserUtils.getSession().getAttribute(UserStatusUtil.ThreadUserStatusBrainKey)).getStarNum();


    }
    /**
     * 获取当前等级剩余星级数
     */
    public static int  getLevelRemainStar(){

        return  getCurrUserConfig().getHandler().getLevelRemainStar( getCurrRankData().getRankStar().intValue());

    }
}
